home *** CD-ROM | disk | FTP | other *** search
Unknown | 1993-11-08 | 3.5 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was not able to be converted.
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| file
| data
| default
| |
100%
| gt2
| Kopftext: '// SFLOAT.INL, Listing 2
| default (weak)
| |
100%
| detectItEasy
| Format: plain text[LF]
| default (weak)
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 2f 2f 20 53 46 4c 4f 41 | 54 2e 49 4e 4c 2c 20 4c |// SFLOA|T.INL, L|
|00000010| 69 73 74 69 6e 67 20 32 | 0a 0a 69 6e 6c 69 6e 65 |isting 2|..inline|
|00000020| 20 73 66 6c 6f 61 74 3a | 3a 73 66 6c 6f 61 74 28 | sfloat:|:sfloat(|
|00000030| 29 20 7b 7d 0a 0a 69 6e | 6c 69 6e 65 20 73 66 6c |) {}..in|line sfl|
|00000040| 6f 61 74 3a 3a 73 66 6c | 6f 61 74 28 20 66 6c 6f |oat::sfl|oat( flo|
|00000050| 61 74 20 66 20 29 0a 20 | 20 20 7b 0a 0a 20 20 20 |at f ). | {.. |
|00000060| 2f 2f 20 49 6e 69 74 20 | 63 6f 6e 76 65 72 73 69 |// Init |conversi|
|00000070| 6f 6e 20 75 6e 69 6f 6e | 0a 20 20 20 75 2e 66 20 |on union|. u.f |
|00000080| 3d 20 66 3b 0a 0a 20 20 | 20 2f 2f 20 47 65 74 20 |= f;.. | // Get |
|00000090| 74 68 65 20 73 69 67 6e | 0a 20 20 20 69 66 20 28 |the sign|. if (|
|000000a0| 20 53 69 67 6e 65 64 20 | 29 0a 20 20 20 20 20 20 | Signed |). |
|000000b0| 7b 0a 20 20 20 20 20 20 | 69 66 20 28 20 21 66 73 |{. |if ( !fs|
|000000c0| 66 42 69 61 73 20 29 0a | 20 20 20 20 20 20 20 20 |fBias ).| |
|000000d0| 20 7b 0a 20 20 20 20 20 | 20 20 20 20 73 20 3d 20 | {. | s = |
|000000e0| 75 2e 73 5b 31 5d 3b 0a | 20 20 20 20 20 20 20 20 |u.s[1];.| |
|000000f0| 20 72 65 74 75 72 6e 3b | 0a 20 20 20 20 20 20 20 | return;|. |
|00000100| 20 20 7d 0a 20 20 20 20 | 20 20 73 20 3d 20 28 75 | }. | s = (u|
|00000110| 6e 73 69 67 6e 65 64 20 | 73 68 6f 72 74 29 0a 20 |nsigned |short). |
|00000120| 20 20 20 20 20 20 20 20 | 20 20 20 28 28 20 75 2e | | (( u.|
|00000130| 6c 20 26 20 66 4d 61 6e | 53 69 67 6e 4d 61 73 6b |l & fMan|SignMask|
|00000140| 20 29 20 3e 3e 20 73 66 | 42 69 74 73 20 29 3b 0a | ) >> sf|Bits );.|
|00000150| 20 20 20 20 20 20 7d 0a | 20 20 20 65 6c 73 65 0a | }.| else.|
|00000160| 20 20 20 20 20 20 7b 0a | 20 20 20 20 20 20 73 20 | {.| s |
|00000170| 3d 20 30 3b 0a 20 20 20 | 20 20 20 7d 0a 0a 20 20 |= 0;. | }.. |
|00000180| 20 2f 2f 20 47 65 74 20 | 74 68 65 20 65 78 70 6f | // Get |the expo|
|00000190| 6e 65 6e 74 0a 20 20 20 | 45 78 70 20 3d 20 28 75 |nent. |Exp = (u|
|000001a0| 6e 73 69 67 6e 65 64 20 | 73 68 6f 72 74 29 0a 20 |nsigned |short). |
|000001b0| 20 20 20 20 20 20 20 20 | 28 28 20 75 2e 6c 20 26 | |(( u.l &|
|000001c0| 20 66 45 78 70 4d 61 73 | 6b 20 29 20 3e 3e 20 66 | fExpMas|k ) >> f|
|000001d0| 4d 61 6e 42 69 74 73 20 | 29 20 2d 0a 20 20 20 20 |ManBits |) -. |
|000001e0| 20 20 20 20 20 66 73 66 | 42 69 61 73 3b 0a 0a 20 | fsf|Bias;.. |
|000001f0| 20 20 2f 2f 20 43 6f 6d | 70 72 65 73 73 20 74 68 | // Com|press th|
|00000200| 65 20 65 78 70 6f 6e 65 | 6e 74 0a 20 20 20 45 78 |e expone|nt. Ex|
|00000210| 70 20 3d 20 28 20 45 78 | 70 20 3c 3c 20 28 20 73 |p = ( Ex|p << ( s|
|00000220| 66 45 78 70 53 68 69 66 | 74 20 29 29 20 3e 3e 20 |fExpShif|t )) >> |
|00000230| 73 66 4d 61 6e 53 69 67 | 6e 42 69 74 73 3b 0a 0a |sfManSig|nBits;..|
|00000240| 20 20 20 2f 2f 20 47 65 | 74 20 74 68 65 20 6d 61 | // Ge|t the ma|
|00000250| 6e 74 69 73 73 61 0a 20 | 20 20 4d 61 6e 20 3d 20 |ntissa. | Man = |
|00000260| 28 75 6e 73 69 67 6e 65 | 64 20 73 68 6f 72 74 29 |(unsigne|d short)|
|00000270| 28 28 20 75 2e 6c 20 26 | 20 66 4d 61 6e 4d 61 73 |(( u.l &| fManMas|
|00000280| 6b 20 29 20 3e 3e 0a 20 | 20 20 20 20 20 20 20 20 |k ) >>. | |
|00000290| 28 20 73 66 4d 61 6e 53 | 68 69 66 74 20 29 29 3b |( sfManS|hift ));|
|000002a0| 0a 0a 20 20 20 73 20 7c | 3d 20 4d 61 6e 20 7c 20 |.. s ||= Man | |
|000002b0| 45 78 70 3b 0a 0a 20 20 | 20 7d 20 20 20 2f 2f 20 |Exp;.. | } // |
|000002c0| 73 66 6c 6f 61 74 28 20 | 66 6c 6f 61 74 20 29 0a |sfloat( |float ).|
|000002d0| 0a 69 6e 6c 69 6e 65 20 | 73 66 6c 6f 61 74 3a 3a |.inline |sfloat::|
|000002e0| 73 66 6c 6f 61 74 28 20 | 73 66 6c 6f 61 74 26 20 |sfloat( |sfloat& |
|000002f0| 73 66 20 29 20 3a 20 73 | 28 20 73 66 2e 73 20 29 |sf ) : s|( sf.s )|
|00000300| 20 7b 7d 0a 0a 2f 2f 20 | 43 61 73 74 20 2d 20 63 | {}..// |Cast - c|
|00000310| 6f 6e 76 65 72 73 69 6f | 6e 20 6f 70 65 72 61 74 |onversio|n operat|
|00000320| 6f 72 73 0a 69 6e 6c 69 | 6e 65 20 73 66 6c 6f 61 |ors.inli|ne sfloa|
|00000330| 74 3a 3a 6f 70 65 72 61 | 74 6f 72 20 66 6c 6f 61 |t::opera|tor floa|
|00000340| 74 28 29 0a 20 20 20 7b | 0a 0a 20 20 20 2f 2f 20 |t(). {|.. // |
|00000350| 47 65 74 20 74 68 65 20 | 73 69 67 6e 20 2d 20 49 |Get the |sign - I|
|00000360| 6e 69 74 20 63 6f 6e 76 | 65 72 73 69 6f 6e 20 75 |nit conv|ersion u|
|00000370| 6e 69 6f 6e 0a 20 20 20 | 69 66 20 28 20 53 69 67 |nion. |if ( Sig|
|00000380| 6e 65 64 20 29 0a 0a 20 | 20 20 20 20 20 7b 0a 20 |ned ).. | {. |
|00000390| 20 20 20 20 20 69 66 20 | 28 20 21 66 73 66 42 69 | if |( !fsfBi|
|000003a0| 61 73 20 29 0a 20 20 20 | 20 20 20 20 20 20 7b dc |as ). | {.|
|000003b0| 6a 00 00 00 00 00 00 dc | 8c 20 20 20 20 20 20 20 |j.......|. |
|000003c0| 20 20 75 2e 73 5b 30 5d | 20 3d 20 30 3b 0a 20 20 | u.s[0]| = 0;. |
|000003d0| 20 20 20 20 20 20 20 75 | 2e 73 5b 31 5d 20 3d 20 | u|.s[1] = |
|000003e0| 73 3b 0a 20 20 20 20 20 | 20 20 20 20 72 65 74 75 |s;. | retu|
|000003f0| 72 6e 20 28 20 75 2e 66 | 20 29 3b 0a 20 20 20 20 |rn ( u.f| );. |
|00000400| 20 20 20 20 20 7d 0a 20 | 20 20 20 20 20 75 2e 6c | }. | u.l|
|00000410| 20 3d 20 28 20 28 75 6e | 73 69 67 6e 65 64 20 6c | = ( (un|signed l|
|00000420| 6f 6e 67 29 0a 20 20 20 | 20 20 20 20 20 20 20 20 |ong). | |
|00000430| 20 28 73 20 26 20 73 66 | 4d 61 6e 53 69 67 6e 4d | (s & sf|ManSignM|
|00000440| 61 73 6b 20 29 29 20 3c | 3c 20 73 66 42 69 74 73 |ask )) <|< sfBits|
|00000450| 3b 0a 20 20 20 20 20 20 | 7d 0a 20 20 20 65 6c 73 |;. |}. els|
|00000460| 65 0a 20 20 20 20 20 20 | 7b 0a 20 20 20 20 20 20 |e. |{. |
|00000470| 75 2e 6c 20 3d 20 30 4c | 3b 0a 20 20 20 20 20 20 |u.l = 0L|;. |
|00000480| 7d 0a 0a 20 20 20 2f 2f | 20 47 65 74 20 65 78 70 |}.. //| Get exp|
|00000490| 6f 6e 65 6e 74 0a 20 20 | 20 75 2e 6c 20 7c 3d 20 |onent. | u.l |= |
|000004a0| 28 75 6e 73 69 67 6e 65 | 64 20 6c 6f 6e 67 29 28 |(unsigne|d long)(|
|000004b0| 28 28 20 73 20 3c 3c 20 | 73 66 4d 61 6e 53 69 67 |(( s << |sfManSig|
|000004c0| 6e 42 69 74 73 20 29 20 | 3e 3e 0a 20 20 20 20 20 |nBits ) |>>. |
|000004d0| 20 20 20 20 66 45 78 70 | 53 68 69 66 74 20 29 20 | fExp|Shift ) |
|000004e0| 2b 20 66 73 66 42 69 61 | 73 20 29 20 3c 3c 20 66 |+ fsfBia|s ) << f|
|000004f0| 4d 61 6e 42 69 74 73 3b | 0a 0a 20 20 20 2f 2f 20 |ManBits;|.. // |
|00000500| 47 65 74 20 74 68 65 20 | 6d 61 6e 74 69 73 61 0a |Get the |mantisa.|
|00000510| 20 20 20 75 2e 6c 20 7c | 3d 20 28 20 28 75 6e 73 | u.l ||= ( (uns|
|00000520| 69 67 6e 65 64 20 6c 6f | 6e 67 29 28 20 73 20 3c |igned lo|ng)( s <|
|00000530| 3c 20 66 4d 61 6e 53 68 | 69 66 74 31 20 29 29 20 |< fManSh|ift1 )) |
|00000540| 3c 3c 0a 20 20 20 20 20 | 20 20 20 20 66 4d 61 6e |<<. | fMan|
|00000550| 53 68 69 66 74 32 3b 0a | 0a 20 20 20 72 65 74 75 |Shift2;.|. retu|
|00000560| 72 6e 20 28 20 75 2e 66 | 20 29 3b 0a 0a 20 20 20 |rn ( u.f| );.. |
|00000570| 7d 20 20 20 2f 2f 20 6f | 70 65 72 61 74 6f 72 28 |} // o|perator(|
|00000580| 66 6c 6f 61 74 29 0a 0a | 2f 2f 20 4f 76 65 72 6c |float)..|// Overl|
|00000590| 6f 61 64 65 64 20 6f 70 | 65 72 61 74 6f 72 73 0a |oaded op|erators.|
|000005a0| 0a 2f 2f 20 41 73 73 69 | 67 6d 65 6e 74 20 6f 70 |.// Assi|gment op|
|000005b0| 65 72 61 74 6f 72 73 0a | 69 6e 6c 69 6e 65 20 73 |erators.|inline s|
|000005c0| 66 6c 6f 61 74 20 26 73 | 66 6c 6f 61 74 3a 3a 6f |float &s|float::o|
|000005d0| 70 65 72 61 74 6f 72 2b | 3d 28 20 73 66 6c 6f 61 |perator+|=( sfloa|
|000005e0| 74 20 73 66 20 29 0a 20 | 20 20 7b 0a 20 20 20 66 |t sf ). | {. f|
|000005f0| 6c 6f 61 74 20 66 20 3d | 20 28 66 6c 6f 61 74 29 |loat f =| (float)|
|00000600| 2a 74 68 69 73 3b 0a 20 | 20 20 66 20 2b 3d 20 28 |*this;. | f += (|
|00000610| 66 6c 6f 61 74 29 73 66 | 3b 0a 20 20 20 2a 74 68 |float)sf|;. *th|
|00000620| 69 73 20 3d 20 28 73 66 | 6c 6f 61 74 29 66 3b 0a |is = (sf|loat)f;.|
|00000630| 20 20 20 72 65 74 75 72 | 6e 20 28 20 2a 74 68 69 | retur|n ( *thi|
|00000640| 73 20 29 3b 0a 20 20 20 | 7d 20 20 20 2f 2f 20 6f |s );. |} // o|
|00000650| 70 65 72 61 74 6f 72 2b | 3d 0a 0a 69 6e 6c 69 6e |perator+|=..inlin|
|00000660| 65 20 73 66 6c 6f 61 74 | 20 26 73 66 6c 6f 61 74 |e sfloat| &sfloat|
|00000670| 3a 3a 6f 70 65 72 61 74 | 6f 72 2d 3d 28 20 73 66 |::operat|or-=( sf|
|00000680| 6c 6f 61 74 20 73 66 20 | 29 0a 20 20 20 7b 0a 20 |loat sf |). {. |
|00000690| 20 20 66 6c 6f 61 74 20 | 66 20 3d 20 28 66 6c 6f | float |f = (flo|
|000006a0| 61 74 29 2a 74 68 69 73 | 3b 0a 20 20 20 66 20 2d |at)*this|;. f -|
|000006b0| 3d 20 28 66 6c 6f 61 74 | 29 73 66 3b 0a 20 20 20 |= (float|)sf;. |
|000006c0| 2a 74 68 69 73 20 3d 20 | 28 73 66 6c 6f 61 74 29 |*this = |(sfloat)|
|000006d0| 66 3b 0a 20 20 20 72 65 | 74 75 72 6e 20 28 20 2a |f;. re|turn ( *|
|000006e0| 74 68 69 73 20 29 3b 0a | 20 20 20 7d 20 20 20 2f |this );.| } /|
|000006f0| 2f 20 6f 70 65 72 61 74 | 6f 72 2d 3d 0a 0a 69 6e |/ operat|or-=..in|
|00000700| 6c 69 6e 65 20 73 66 6c | 6f 61 74 20 26 73 66 6c |line sfl|oat &sfl|
|00000710| 6f 61 74 3a 3a 6f 70 65 | 72 61 74 6f 72 2a 3d 28 |oat::ope|rator*=(|
|00000720| 20 73 66 6c 6f 61 74 20 | 73 66 20 29 0a 20 20 20 | sfloat |sf ). |
|00000730| 7b 0a 20 20 20 66 6c 6f | 61 74 20 66 20 3d 20 28 |{. flo|at f = (|
|00000740| 66 6c 6f 61 74 29 2a 74 | 68 69 73 3b 0a 20 20 20 |float)*t|his;. |
|00000750| 66 20 2a 3d 20 28 66 6c | 6f 61 74 29 73 66 3b 0a |f *= (fl|oat)sf;.|
|00000760| 20 20 20 2a 74 68 69 73 | 20 3d 20 28 73 66 6c 6f | *this| = (sflo|
|00000770| 61 74 29 66 3b 0a 20 20 | 20 72 65 74 75 72 6e 20 |at)f;. | return |
|00000780| 28 20 2a 74 68 69 73 20 | 29 3b 0a 20 20 20 7d 20 |( *this |);. } |
|00000790| 20 20 2f 2f 20 6f 70 65 | 72 61 74 6f 72 2a 3d 0a | // ope|rator*=.|
|000007a0| 0a 69 6e 6c 69 6e 65 20 | 73 66 6c 6f 61 74 20 26 |.inline |sfloat &|
|000007b0| 73 66 6c 6f 61 74 3a 3a | 6f 70 65 72 61 74 6f 72 |sfloat::|operator|
|000007c0| 2f 3d 28 20 73 66 6c 6f | 61 74 20 73 66 20 29 0a |/=( sflo|at sf ).|
|000007d0| 20 20 20 7b 0a 20 20 20 | 66 6c 6f 61 74 20 66 20 | {. |float f |
|000007e0| 3d 20 28 66 6c 6f 61 74 | 29 2a 74 68 69 73 3b dc |= (float|)*this;.|
|000007f0| 6a 00 00 00 00 00 00 dc | 8c 20 20 20 66 20 2f 3d |j.......|. f /=|
|00000800| 20 28 66 6c 6f 61 74 29 | 73 66 3b 0a 20 20 20 2a | (float)|sf;. *|
|00000810| 74 68 69 73 20 3d 20 28 | 73 66 6c 6f 61 74 29 66 |this = (|sfloat)f|
|00000820| 3b 0a 20 20 20 72 65 74 | 75 72 6e 20 28 20 2a 74 |;. ret|urn ( *t|
|00000830| 68 69 73 20 29 3b 0a 20 | 20 20 7d 20 20 20 2f 2f |his );. | } //|
|00000840| 20 6f 70 65 72 61 74 6f | 72 2f 3d 0a 0a 2f 2f 20 | operato|r/=..// |
|00000850| 69 6e 63 72 65 6d 65 6e | 74 20 6f 70 65 72 61 74 |incremen|t operat|
|00000860| 6f 72 73 0a 69 6e 6c 69 | 6e 65 20 73 66 6c 6f 61 |ors.inli|ne sfloa|
|00000870| 74 20 73 66 6c 6f 61 74 | 3a 3a 6f 70 65 72 61 74 |t sfloat|::operat|
|00000880| 6f 72 2b 2b 28 29 0a 20 | 20 20 7b 20 72 65 74 75 |or++(). | { retu|
|00000890| 72 6e 20 28 20 2a 74 68 | 69 73 20 2b 3d 20 31 2e |rn ( *th|is += 1.|
|000008a0| 30 66 20 29 3b 20 7d 0a | 0a 69 6e 6c 69 6e 65 20 |0f ); }.|.inline |
|000008b0| 73 66 6c 6f 61 74 20 73 | 66 6c 6f 61 74 3a 3a 6f |sfloat s|float::o|
|000008c0| 70 65 72 61 74 6f 72 2d | 2d 28 29 0a 20 20 20 7b |perator-|-(). {|
|000008d0| 20 72 65 74 75 72 6e 20 | 28 20 2a 74 68 69 73 20 | return |( *this |
|000008e0| 2d 3d 20 31 2e 30 66 20 | 29 3b 20 7d 0a 0a 69 6e |-= 1.0f |); }..in|
|000008f0| 6c 69 6e 65 20 73 66 6c | 6f 61 74 20 73 66 6c 6f |line sfl|oat sflo|
|00000900| 61 74 3a 3a 6f 70 65 72 | 61 74 6f 72 2b 2b 28 20 |at::oper|ator++( |
|00000910| 69 6e 74 20 29 0a 20 20 | 20 7b 0a 20 20 20 73 66 |int ). | {. sf|
|00000920| 6c 6f 61 74 20 73 66 28 | 20 2a 74 68 69 73 20 29 |loat sf(| *this )|
|00000930| 3b 0a 20 20 20 2a 74 68 | 69 73 20 2b 3d 20 31 2e |;. *th|is += 1.|
|00000940| 30 66 3b 0a 20 20 20 72 | 65 74 75 72 6e 20 28 20 |0f;. r|eturn ( |
|00000950| 73 66 20 29 3b 0a 20 20 | 20 7d 20 20 20 2f 2f 20 |sf );. | } // |
|00000960| 6f 70 65 72 61 74 6f 72 | 20 2b 2b 0a 0a 69 6e 6c |operator| ++..inl|
|00000970| 69 6e 65 20 73 66 6c 6f | 61 74 20 73 66 6c 6f 61 |ine sflo|at sfloa|
|00000980| 74 3a 3a 6f 70 65 72 61 | 74 6f 72 2d 2d 28 69 6e |t::opera|tor--(in|
|00000990| 74 20 29 0a 20 20 20 7b | 0a 20 20 20 73 66 6c 6f |t ). {|. sflo|
|000009a0| 61 74 20 73 66 28 20 2a | 74 68 69 73 20 29 3b 0a |at sf( *|this );.|
|000009b0| 20 20 20 2a 74 68 69 73 | 20 2d 3d 20 31 2e 30 66 | *this| -= 1.0f|
|000009c0| 3b 0a 20 20 20 72 65 74 | 75 72 6e 20 28 20 73 66 |;. ret|urn ( sf|
|000009d0| 20 29 3b 0a 20 20 20 7d | 20 20 20 2f 2f 20 6f 70 | );. }| // op|
|000009e0| 65 72 61 74 6f 72 20 2d | 2d 0a 0a 2f 2f 20 73 69 |erator -|-..// si|
|000009f0| 67 6e 20 63 68 61 6e 67 | 65 20 6f 70 65 72 61 74 |gn chang|e operat|
|00000a00| 6f 72 73 0a 69 6e 6c 69 | 6e 65 20 73 66 6c 6f 61 |ors.inli|ne sfloa|
|00000a10| 74 20 73 66 6c 6f 61 74 | 3a 3a 6f 70 65 72 61 74 |t sfloat|::operat|
|00000a20| 6f 72 2b 28 29 0a 20 20 | 20 7b 20 72 65 74 75 72 |or+(). | { retur|
|00000a30| 6e 20 28 20 2a 74 68 69 | 73 20 29 3b 20 7d 0a 0a |n ( *thi|s ); }..|
|00000a40| 69 6e 6c 69 6e 65 20 73 | 66 6c 6f 61 74 20 73 66 |inline s|float sf|
|00000a50| 6c 6f 61 74 3a 3a 6f 70 | 65 72 61 74 6f 72 2d 28 |loat::op|erator-(|
|00000a60| 29 0a 20 20 20 7b 0a 20 | 20 20 73 66 6c 6f 61 74 |). {. | sfloat|
|00000a70| 20 73 66 28 20 30 2e 30 | 66 20 29 3b 0a 20 20 20 | sf( 0.0|f );. |
|00000a80| 72 65 74 75 72 6e 20 28 | 20 73 66 20 2d 20 2a 74 |return (| sf - *t|
|00000a90| 68 69 73 20 29 3b 0a 20 | 20 20 7d 20 20 20 2f 2f |his );. | } //|
|00000aa0| 20 6f 70 65 72 61 74 6f | 72 20 2d 0a 0a 2f 2f 20 | operato|r -..// |
|00000ab0| 4c 6f 67 69 63 61 6c 20 | 6f 70 65 72 61 74 6f 72 |Logical |operator|
|00000ac0| 73 0a 69 6e 6c 69 6e 65 | 20 69 6e 74 20 6f 70 65 |s.inline| int ope|
|00000ad0| 72 61 74 6f 72 3d 3d 28 | 20 73 66 6c 6f 61 74 20 |rator==(| sfloat |
|00000ae0| 73 66 31 2c 20 73 66 6c | 6f 61 74 20 73 66 32 20 |sf1, sfl|oat sf2 |
|00000af0| 29 0a 20 20 20 7b 20 72 | 65 74 75 72 6e 20 28 20 |). { r|eturn ( |
|00000b00| 73 66 31 2e 73 20 3d 3d | 20 73 66 32 2e 73 20 29 |sf1.s ==| sf2.s )|
|00000b10| 3b 20 7d 0a 0a 69 6e 6c | 69 6e 65 20 69 6e 74 20 |; }..inl|ine int |
|00000b20| 6f 70 65 72 61 74 6f 72 | 3c 3d 28 20 73 66 6c 6f |operator|<=( sflo|
|00000b30| 61 74 20 73 66 31 2c 20 | 73 66 6c 6f 61 74 20 73 |at sf1, |sfloat s|
|00000b40| 66 32 20 29 0a 20 20 20 | 7b 20 72 65 74 75 72 6e |f2 ). |{ return|
|00000b50| 20 28 20 73 66 31 2e 73 | 20 3c 3d 20 73 66 32 2e | ( sf1.s| <= sf2.|
|00000b60| 73 20 29 3b 20 7d 0a 0a | 69 6e 6c 69 6e 65 20 69 |s ); }..|inline i|
|00000b70| 6e 74 20 6f 70 65 72 61 | 74 6f 72 3e 3d 28 20 73 |nt opera|tor>=( s|
|00000b80| 66 6c 6f 61 74 20 73 66 | 31 2c 20 73 66 6c 6f 61 |float sf|1, sfloa|
|00000b90| 74 20 73 66 32 20 29 0a | 20 20 20 7b 20 72 65 74 |t sf2 ).| { ret|
|00000ba0| 75 72 6e 20 28 20 73 66 | 31 2e 73 20 3e 3d 20 73 |urn ( sf|1.s >= s|
|00000bb0| 66 32 2e 73 20 29 3b 20 | 7d 0a 0a 69 6e 6c 69 6e |f2.s ); |}..inlin|
|00000bc0| 65 20 69 6e 74 20 6f 70 | 65 72 61 74 6f 72 3c 28 |e int op|erator<(|
|00000bd0| 20 73 66 6c 6f 61 74 20 | 73 66 31 2c 20 73 66 6c | sfloat |sf1, sfl|
|00000be0| 6f 61 74 20 73 66 32 20 | 29 0a 20 20 20 7b 20 72 |oat sf2 |). { r|
|00000bf0| 65 74 75 72 6e 20 28 20 | 73 66 31 2e 73 20 3c 20 |eturn ( |sf1.s < |
|00000c00| 73 66 32 2e 73 20 20 29 | 3b 20 7d 0a 0a 69 6e 6c |sf2.s )|; }..inl|
|00000c10| 69 6e 65 20 69 6e 74 20 | 6f 70 65 72 61 74 6f 72 |ine int |operator|
|00000c20| 3e 28 20 73 66 6c 6f 61 | 74 20 73 66 31 2c 20 73 |>( sfloa|t sf1, s|
|00000c30| 66 6c 6f 61 74 20 73 66 | 32 20 29 0a 20 20 20 7b |float sf|2 ). {|
|00000c40| 20 72 65 74 75 72 6e 20 | 28 20 73 66 31 2e 73 20 | return |( sf1.s |
|00000c50| 3e 20 73 66 32 2e 73 20 | 29 3b 20 7d 0a 0a 69 6e |> sf2.s |); }..in|
|00000c60| 6c 69 6e 65 20 69 6e 74 | 20 6f 70 65 72 61 74 6f |line int| operato|
|00000c70| 72 21 3d 28 20 73 66 6c | 6f 61 74 20 73 66 31 2c |r!=( sfl|oat sf1,|
|00000c80| 20 73 66 6c 6f 61 74 20 | 73 66 32 20 29 0a 20 20 | sfloat |sf2 ). |
|00000c90| 20 7b 20 72 65 74 75 72 | 6e 20 28 20 21 28 20 73 | { retur|n ( !( s|
|00000ca0| 66 31 2e 73 20 3d 3d 20 | 73 66 32 2e 73 20 29 29 |f1.s == |sf2.s ))|
|00000cb0| 3b 20 7d dc 6a 00 00 00 | 00 00 00 dc 8c 0a 2f 2f |; }.j...|......//|
|00000cc0| 20 6d 61 74 68 20 6f 70 | 65 72 61 74 69 6f 6e 73 | math op|erations|
|00000cd0| 0a 69 6e 6c 69 6e 65 20 | 73 66 6c 6f 61 74 20 6f |.inline |sfloat o|
|00000ce0| 70 65 72 61 74 6f 72 2b | 28 20 73 66 6c 6f 61 74 |perator+|( sfloat|
|00000cf0| 20 73 66 31 2c 20 73 66 | 6c 6f 61 74 20 73 66 32 | sf1, sf|loat sf2|
|00000d00| 20 29 0a 20 20 20 7b 20 | 72 65 74 75 72 6e 20 28 | ). { |return (|
|00000d10| 20 73 66 31 20 2b 3d 20 | 73 66 32 20 29 3b 20 7d | sf1 += |sf2 ); }|
|00000d20| 0a 0a 69 6e 6c 69 6e 65 | 20 73 66 6c 6f 61 74 20 |..inline| sfloat |
|00000d30| 6f 70 65 72 61 74 6f 72 | 2d 28 20 73 66 6c 6f 61 |operator|-( sfloa|
|00000d40| 74 20 73 66 31 2c 20 73 | 66 6c 6f 61 74 20 73 66 |t sf1, s|float sf|
|00000d50| 32 20 29 0a 20 20 20 7b | 20 72 65 74 75 72 6e 20 |2 ). {| return |
|00000d60| 28 20 73 66 31 20 2d 3d | 20 73 66 32 20 29 3b 20 |( sf1 -=| sf2 ); |
|00000d70| 7d 0a 0a 69 6e 6c 69 6e | 65 20 73 66 6c 6f 61 74 |}..inlin|e sfloat|
|00000d80| 20 6f 70 65 72 61 74 6f | 72 2a 28 20 73 66 6c 6f | operato|r*( sflo|
|00000d90| 61 74 20 73 66 31 2c 20 | 73 66 6c 6f 61 74 20 73 |at sf1, |sfloat s|
|00000da0| 66 32 20 29 0a 20 20 20 | 7b 20 72 65 74 75 72 6e |f2 ). |{ return|
|00000db0| 20 28 20 73 66 31 20 2a | 3d 20 73 66 32 20 29 3b | ( sf1 *|= sf2 );|
|00000dc0| 20 7d 0a 0a 69 6e 6c 69 | 6e 65 20 73 66 6c 6f 61 | }..inli|ne sfloa|
|00000dd0| 74 20 6f 70 65 72 61 74 | 6f 72 2f 28 20 73 66 6c |t operat|or/( sfl|
|00000de0| 6f 61 74 20 73 66 31 2c | 20 73 66 6c 6f 61 74 20 |oat sf1,| sfloat |
|00000df0| 73 66 32 20 29 0a 20 20 | 20 7b 20 72 65 74 75 72 |sf2 ). | { retur|
|00000e00| 6e 20 28 20 73 66 31 20 | 2f 3d 20 73 66 32 20 29 |n ( sf1 |/= sf2 )|
|00000e10| 3b 20 7d 0a 0a 2f 2f 20 | 45 6e 64 20 6f 66 20 53 |; }..// |End of S|
|00000e20| 46 4c 4f 41 54 2e 49 4e | 4c 0a |FLOAT.IN|L. |
+--------+-------------------------+-------------------------+--------+--------+